package 数学作业.homework3.test1;

import java.util.Random;

public class 选择排序 {
    public static void main(String[] args) {
        Random ran = new Random();
        int[] arr = new int[100];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = ran.nextInt(101);
        }
        selectSort(arr);
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
    public static void selectSort(int[] arr){
        //定义end指针用来交换最大值
        int end = arr.length - 1;
        while(end > 0){
            int key = 0;//假设0号下标最大
            //找最大数字
            for(int i = 0; i <= end;i++){
                if(arr[i] > arr[key]){
                    key = i;
                }
            }
            //如果说最大值下标不是最后一位未排序的元素，那么就进行交换
            if(key != end){
                int tmp = arr[key];
                arr[key] = arr[end];
                arr[end] = tmp;
            }
            end--;
        }
    }
}
